The invention relates to a digital signal processing device for generating output code words, comprising a storage device for the storage and retrieval of at least one code word related to an output code word; a series circuit of multiplying means and first combination means, to which multiplying means last mentioned code word and at least one second code word which is also related to an output code word are applied as well as weighting factors by which series circuit code words are generated which are supplied to a feedback circuit including a quantizer circuit, having an output coupled to an input of said storage device.
Such a signal processing device may function as a recursive digital filter in which a digital input signal is supplied to this device and the weighting factors are chosen in accordance with the transfer characteristic of the filter to be realized. A similar device can also function as a digital oscillator, in the case in which no input signal is available.
As is known, recursive digital filters may be constituted by a number of the signal processing devices described above and arranged in cascade. Each of said devices is then in the form of a second-order recursive digital filter. In a so-called direct form two a recursive part of such a second-order recursive digital filter comprises two storage sections in which, for example, mutually delayed versions of the output code words are stored. In a multiplier these code words are multiplied by weighting factors, the so-called filter coefficients and the products so obtained are added in a first adder. The sum of products obtained in this way is thereafter added in a second adder to an input code word and the result is written into the first storage section, and the code word which was originally stored in this first storage section, is shifted to the second storage section.
Besides this embodiment of a recursive digital filter the literature also discusses, for example, the so-called direct form one of which is the so-called transpose configuration of the direct form two. This latter embodiment is derived from the form described above by reversing the signal direction therein and by replacing the nodes, which are present by adders, and the adders, which are present by nodes.
If the signal processing device described above is utilized as a digital oscillator then it may be realized in the same way as the second-order recursive digital filter described above. As no input signal is supplied to such an oscillator, the said second adder can be dispensed with.
In general the above-mentioned code words and weighting factors represent numbers which are expressed in the binary system. Each of these numbers then consists of a plurality of bits which each represent a specific power of two. Instead of the expression code words the expression numbers will be used in what follows hereinafter.
As has been stated already hereinbefore both in a digital filter and in a digital oscillator two numbers are each time multiplied together. When two numbers, which are given in the binary system are multiplied, a number is obtained which generally consisting of a number of bits which is larger than the number of bits of each of the numbers to be multiplied. Consequently, for storing successive products in the first storage section a storage section of increasing capacity is required for each multiplication.
In order to limit the storage capacity of the storage section to a specific number of bits, the numbers supplied by the first adder are each time quantized in the quantizer. Consequently each number of, for example, m+r bits supplied by the first adder is converted to a number of m bits. This limitation of the number length can be realized in conformity with the principles of rounding. The m+ r-bits number which is located between two m-bits numbers is then replaced by that m-bits number whose magnitude is nearest to the r-bits number.
Due to its non-linear character such a quantization results, in many cases, in instabilities in the device under consideration. In a recursive digital filter, quantization results in so-called limit cycles i.e. spontaneous oscillations in the absence of an input signal or in the presence of a periodical input signal.
In a digital oscillator quantization results in the generation of a signal whose amplitude does not correspond to a specific desired value.
The article: "Second-order digital filter with only one magnitude-truncation quantizer and having practically no limit cycles", in Electronics Letters, Nov. 1, 1973, volume 9, No. 22, pages 531-532 shows how the stability of a recursive digital filter can be increased by limiting the length of m+ r-bits numbers by means of magnitude truncation. In that case, the m+ r-bits numbers, if they have not been given as such, are converted to numbers which are given in sign and magnitude as well as in fixed-point representation, and thereafter those bits are discarded which are less significant than the least significant bit of the first m significant bits of this number.
For a digital oscillator it is also known to increase its stability. By replacing each m+ r-bit number by the m-bits number whose magnitude is nearest to the m+ r-bit number and greater than the m+ r-bit number.
Because of this increase in stability of signal processing devices described above, a considerable extension of its range of application has been realized. If, however, this signal processing device is implemented as a recursive digital filter, limit cycles will still occur at specific values of the filter coefficients. If it is implemented as a digital oscillator, then the generation of the signal of the desired amplitude may still stop spontaneously when a small disturbance occurs.
It is an object of the invention to provide a further improvement of the stability of the signal processing devices described above.